In programs of a computer, for example, in the scalar product, matrix multiplication and the solving of many polynomial forms, it is very common to obtain a result after multiplying two numbers and then adding another number. As the expression a×b+c occurs frequently and needs to be operated, most of popular processors provide multiply-add instructions (MADD) to improve the execution performance of algorithm. The MADD is used for improving the computation speed. As the MADD allows two times of operation: multiplication first and then addition, an instruction of MADD is equivalent to two instructions. As two times of operation are fused into one time of operation, the MADD may be regarded as a fused multiply-add (FMA) operation.
In general, the form of an MADD instruction is as follows:d=a×b+c. 
Here, as it is required to designate 3 operands and 1 result, during compiling an instruction, more bytes need to be used in the instruction, and more complex hardware implementation will be caused. This is because a third hardware access port is required to be added for the instruction. Another choice is to regard the MADD as a multiply-accumulation (MAC) operation, so that products are accumulated by summation. In this case, the processor provides a special register, i.e., an accumulator (acc) that has one implicit operand and one implicit MAC result. The form of the MAC is as follows:mac a b. Here, this formula means:acc=a×b+acc.
As acc is a special register, the processor has to define two additional instructions, i.e., an acc initialize instruction (initacc) and an acc middle-value instruction (mvacc).
For an MAC instruction, although this form can simplify the hardware implementation, the constant use of an acc register makes the flexibility of compiling somewhat declined. When a programmer programs in a high-level language, such as C and C++, just determination on when to use MAC and when not to use MAC by a compiler makes the MAC method difficult. The insufficient resource of the accumulator usually is a decisive factor of using MAC. Therefore, although no any additional hardware structure is required for the MAC instruction, the actual identification of an executable MAC instruction after compiling the source code rarely occurs due to the restriction of the accumulator in the prior art, resulting in low execution gain.